/**
 * ES5中函数的参数：
 * 1.  默认值：typeof检测
 * 2. 可变参数：arguments对象接收
 */

function add (x, y) {
  // 通过逻辑或 给 参数 赋予 默认值 不严谨
  // x = x || 100
  // y = y || 200
  // 严谨的
  x = typeof x === 'undefined' ? 100 : x
  y = typeof y === 'undefined' ? 200 : y
  // console.log(x, y)
  return x + y
}

// console.log(add(11, 11))// ? 22 
// console.log(add())// ? 300
// console.log(add('', 'hello'))// ? 'hello'

function getSum () {
  console.log(arguments)// 类/伪/假数组
  let total = 0
  for (let i = 0; i < arguments.length; i++) {
    total += arguments[i]
  }
  return total
}
console.log(getSum(1, 2))// ? 3
console.log(getSum(1, 2, 3, 4, 5))// ? 15
console.log(getSum(7, 8, 9))// ? 24





function add (x, y) {
  x = typeof x === 'undefined' ? 100 : x
  y = typeof y === 'undefined' ? 200 : y
  return x + y
}
